Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a major refactor; the bot has now been updated to easily support multi-server monitoring.
More work is required around configuring and enabling / disabling actions on a per-server basis, but this will form part of the Twitch integration work I will be doing next.
This is pretty much ready to go into master if you're happy. Let me know if you need me to explain any of the architectural decisions I've made here.
There's no reason this couldn't go into 1.0.0, though I've tagged this as part of 1.1.0.
This addresses the following issues:
#25 - There is now a new "GenericActionHandler" that is resolved only when no bang-command is found. At present it doesn't do much, but this can be used to monitor incoming none-command messages for any server.
#11 - Pretty much complete, though I've not bothered with a message bus.
#2 - Many more unit tests. Bot.js is now much, much simpler, but there are no tests for it - I've got some minor tweaks to make to how it loads the servers on startup, at which point I'll write tests for it.